package web后端.会话跟踪.登录认证.登录标记.会话技术.Session;

/**
 * Session<p>
 * 详见项目<a href="#">springboot-session-tracking-cookie</a>的session1、session2方法<p></p>
 *
 * 优点：储存在服务器，安全<p>
 * 缺点：<p>
 * 1、Cookie的缺点<p>
 * 2、在服务器集群环境下无法使用Session
 */
public class index {
    /**
     * Session是服务器端会话跟踪技术，它存储在服务器端的<p>
     * 而Session的底层其实是基于Cookie来实现的<p>
     * 在浏览器向服务器发出请求时，会自动地从服务器获取一个会话对象<a href="#">Session</a><p>
     * 而如果是第一次发起请求，服务器中还不存在Session,这时候服务器就会自动创建一个会话对象<a href="#">Session</a><p>
     * 而每一个会话对象<a href="#">Session</a>都有一个id（<a href="#">Session(id)</a>），称为<a href="#">Session的id</a><p>
     * 而接下来服务器在给浏览器响应数据的时候，会将Session的id通过Cookie响应给浏览器<p></p>
     * <p>
     * 其实呢就是在响应头中增加了一个<a href="#">Set-Cookie</a>这个响应头<p>
     * 而Set-Cookie对应的值就是Cookie，而Cookie的名字是固定的，为：<a href="#">JSESSIONID</a><p>
     * 其代表的就是服务器端会话对象<a href="#">Session</a>的<a href="#">id</a><p>
     * 而<a href="#">JSESSIONID</a>的值（<a>value</a>）就是<a>Session的id</a><p></p>
     * <p>
     * 当浏览器获取到这个Cookie（<a href="#">JSESSIONID=value</a>）后<p>
     * 会自动地将Cookie储存在本地<p>
     * 在之后的每一次请求中，都会携带到请求头发送给服务器<p>
     * 服务器拿到这个Cookie（<a href="#">JSESSIONID=value</a>）后<p>
     * 就会在众多的<a href="#">Session</a>中找到当前的会话对象<a href="#">Session</a><p>
     * 这样我们就可以通过Session这个会话对象，在同一次会话的请求直接共享数据<p>
     *
     *
     *
     *
     *
     *
     *
     *
     *
     * @param args
     */
    public static void main(String[] args) {

    }
}
